iT邦幫忙

2023 iThome 鐵人賽

DAY 19
0
SideProject30

python基礎及數據科學之應用系列 第 19

python基礎及數據科學之應用day 19[tensorflow資料庫介紹2]

  • 分享至 

  • xImage
  •  

day 19:
/images/emoticon/emoticon01.gif
希望瀏覽數可以多點啦,更多人看我的教學後有所增長

今天將會介紹圖片分類,比起昨天的更加複雜。以下就只有簡單的例子進行分類。

這個例子就是要用來分別鞋,你擔心需要找大量的圖片來進行訓練嗎,這個例子是在tensorflow提供的,他本來就有資料庫,我們可以運用他資料庫進行演算,分辨出新投入的照片是否鞋。

每張圖片的都是28×28 ,並且是黑白色的,很少容量,所以電腦只需要很短的時間便能把全部閱讀,並進行運算,但若果需要一些更複雜的人工智能物件辨識,也許需要一些運用更深奧的演算法及更多的資料。

例子:

import tensorflow as tf
from tensorflow import keras

fashion_mnist = keras.datasets.fashion_mnist

(train_images,train_labels),(test_images,test_labels) = fashion_mnist.load_data()

執行結果:

train_images

此變數包含來自 Fashion MNIST 資料集的訓練影像。這些影像是灰階影像,並表示為 3D 陣列,其中每個元素代表特定位置的像素強度

train_labels

此變數train_labels包含 Fashion MNIST 資料集中訓練影像的相應標籤。每個標籤代表對應圖像的類別/類別。標籤是 0 到 9 之間的整數,其中每個整數對應於一個特定的類別。這是類別標籤的映射:

0: 上衣
1: 褲子
2: 毛衣
3: 洋裝
4: 外套
5: 涼鞋
6: 襯衫
7: 運動鞋
8: 袋
9: 踝靴

test_images

該變數test_images包含來自Fashion MNIST資料集的測試影像。與類似train_images,可以用來評估機器學習模型的效能。

test_labels

test_labels其實和train_labels差不多,他們的分別在於test_labels是用於訓練後評估效能的。

import tensorflow as tf
from tensorflow import keras
import numpy as np
from PIL import Image

fashion_mnist = keras.datasets.fashion_mnist

(train_images,train_labels),(test_images,test_labels) = fashion_mnist.load_data()

model = keras.Sequential([
    keras.layers.Flatten(input_shape=(28,28)),
    keras.layers.Dense(128,activation=tf.nn.relu),
    keras.layers.Dense(10,activation=tf.nn.softmax) #0-9
])

model.compile(optimizer = tf.keras.optimizers.Adam(),
              loss = 'sparse_categorical_crossentropy',
              metrics=['accuracy'])

model.fit(train_images,train_labels,epochs=5)

model.evaluate(test_images, test_labels)

predictions = model.predict("your image path")

這裏只需在model.predict輸入你的圖片路徑,但由於回傳的的結果有很多,這裏便不詳細說明可以上網查詢。

Adam

dam代表自適應矩估計,是深度學習模型中常用的一種流行的最佳化演算法,比起我們昨天用的演算法更優秀。

tf.nn.softmax

softmax大概就是找出每張相之間的規律,並進行分類。

model.evaluate

用於評估訓練模型在給定測試資料集上的效能。它根據測試數據計算模型的損失值和任何指定指標。

/images/emoticon/emoticon07.gif
今天準備的時間實在不足,內容不多,敬請原諒。
今天的有趣內容到這裏,如果覺得我的文章對你有幫助或有更好的建議,可以追蹤我和不妨在留言區提出,我們明天再見。

reference:
https://www.tensorflow.org/tutorials/quickstart/beginner?hl=zh-cn


上一篇
python基礎及數據科學之應用day 18[tensorflow資料庫介紹]
下一篇
python基礎及數據科學之應用day 20[tkinter資料庫介紹]
系列文
python基礎及數據科學之應用30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言